From: Colin Walters Date: Sat, 27 Jul 2013 14:55:57 +0000 (-0400) Subject: search: Don't throw if provider directories don't exist X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~3864 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=a3236997bee6eb8b487c9e1d72379751da6ba0ae;p=gnome-shell.git search: Don't throw if provider directories don't exist There's no /usr/local/share/gnome-shell/search-providers, so don't throw if we don't find it. --- diff --git a/js/ui/remoteSearch.js b/js/ui/remoteSearch.js index f998a2f06..b1f485e13 100644 --- a/js/ui/remoteSearch.js +++ b/js/ui/remoteSearch.js @@ -116,11 +116,18 @@ function loadRemoteSearchProviders(addProviderCallback) { dataDirs.forEach(function(dataDir) { let path = GLib.build_filenamev([dataDir, 'gnome-shell', 'search-providers']); let dir = Gio.File.new_for_path(path); - let fileEnum = dir.enumerate_children('standard::name,standard::type', + let fileEnum; + try { + fileEnum = dir.enumerate_children('standard::name,standard::type', Gio.FileQueryInfoFlags.NONE, null); - let info; - while ((info = fileEnum.next_file(null))) - loadRemoteSearchProvider(fileEnum.get_child(info)); + } catch (e) { + fileEnum = null; + } + if (fileEnum != null) { + let info; + while ((info = fileEnum.next_file(null))) + loadRemoteSearchProvider(fileEnum.get_child(info)); + } }); let searchSettings = new Gio.Settings({ schema: Search.SEARCH_PROVIDERS_SCHEMA });